The running of a computer is a process that software directs and controls hardware to generate results. However, during the running of a computer, because of program bugs, system backdoors, system vulnerability, malicious codes, etc., users may get partially or totally unexpected results.
To solve this problem, there are provided many methods nowadays, such as static code analysis, vulnerability detection, setting up a malicious code list (i.e., anti-virus software). However, the static code analysis can only determine the correctness of logics and parameter definitions, which is syntax analysis; vulnerability detection is to try a variety of logic assumptions to find logical vulnerability, which is also based on static analysis; and setting up a malicious code list can only solve limited problems as is well-known.
The above methods cannot fully solve existing problems, for they do not analyze runtime instructions.
Therefore, there is a need for a method which can monitor runtime instructions in a computing device.